export interface User {
  id: string;
  email: string;
  name: string;
  avatar?: string;
  verified: boolean;
  createdAt: Date;
}

export interface CryptoCurrency {
  id: string;
  symbol: string;
  name: string;
  price: number;
  change24h: number;
  marketCap: number;
  volume24h: number;
  logo: string;
}

export interface Wallet {
  id: string;
  userId: string;
  currency: string;
  balance: number;
  address: string;
  isActive: boolean;
}

export interface Transaction {
  id: string;
  walletId: string;
  type: 'deposit' | 'withdraw' | 'transfer';
  amount: number;
  currency: string;
  status: 'pending' | 'completed' | 'failed';
  timestamp: Date;
  txHash?: string;
}

export interface PriceHistory {
  timestamp: Date;
  price: number;
}

export interface IdentityDocument {
  type: 'passport' | 'id_card' | 'driver_license';
  frontImage: string;
  backImage?: string;
  number: string;
  expiryDate: Date;
  verified: boolean;
}

export interface AppTheme {
  colors: {
    primary: string;
    secondary: string;
    background: string;
    surface: string;
    text: string;
    textSecondary: string;
    success: string;
    warning: string;
    error: string;
  };
}
